﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DateTimeClass
{
	class Program
	{
		static void Main(string[] args)
		{

			var d1 = DateTime.Now;
			Console.WriteLine(d1); //输出当前日期与时间
			Console.WriteLine(d1.Day);//输出当前月份的日期
			Console.WriteLine(d1.DayOfWeek);//输出当前是星期几
			Console.WriteLine(d1.DayOfYear);//输出当前是今年的多少天
			Console.WriteLine(d1.AddDays(30));//输出当前日期加30天后的日期

			//datetime静态函数可以实例化
			DateTime d2 = new DateTime(2020, 7, 20);
			//TimeSpan 计算时间间隔
			TimeSpan ts = d2 - d1;
			Console.WriteLine(ts.Days); //输出当前时间与d2时间之间的天数


			string str = Console.ReadLine();

			//获取字符串长度 length 
			Console.WriteLine(str.Length);//输出字符串长度
			Console.WriteLine(str[0]);//输出字符串第一个字符
			Console.WriteLine(str[str.Length - 1]);//输出字符串最后一个字符
												   //倒序输出字符串
			for (int i = str.Length - 1; i >= 0; i--)
			{
				Console.Write(str[i]);
			}


			//查找字符 IndexOf 与 LastIndexOf
			if (str.IndexOf("@") != -1) //判断这个字符是否存在
			{
				Console.WriteLine("字符串中含有@，出现的位置在第{0}位", str.IndexOf("@") + 1);

			}


			int first = str.IndexOf("@");
			int last = str.LastIndexOf("@");
			if (first != -1)//判断是否存在@字符
			{
				if (first == last)
				{
					Console.WriteLine("只有一个@字符");
				}
				else
				{
					Console.WriteLine("有多个@字符");
				}
			}
			else
			{
				Console.WriteLine("不含有@字符");
			}




			//字符替换 Replace
			if (str.IndexOf(",") != -1)
			{
				str = str.Replace(",", "_");
			}
			Console.WriteLine("替换后的字符串为:" + str);



			//截取函数 Substring
			int first1 = str.IndexOf("@");
			int last1 = str.LastIndexOf("@");
			if (first1 != -1 && first1 == last1)
			{
				str = str.Substring(0, last);
			}
			Console.WriteLine(str);



			//字符串插入 insert
			str = str.Insert(0, "@@@");
			Console.WriteLine("新字符串为:" + str);



			Console.ReadKey();
		}
	}
}
